home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / esc / ESCTable.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  4.5 KB  |  120 lines

  1. package com.extensibility.esc;
  2.  
  3. import com.extensibility.app.ApplicationPreferences;
  4. import com.extensibility.app.BaseAction;
  5. import com.extensibility.app.BaseApplication;
  6. import com.extensibility.rock.RAction;
  7. import com.extensibility.rock.RTable;
  8. import java.awt.Color;
  9. import java.awt.Dimension;
  10. import java.awt.Point;
  11. import java.awt.event.ActionEvent;
  12. import java.awt.event.InputEvent;
  13. import java.awt.event.MouseEvent;
  14. import java.io.File;
  15. import javax.swing.JPopupMenu;
  16. import javax.swing.JTable;
  17. import javax.swing.table.TableCellEditor;
  18. import javax.swing.table.TableCellRenderer;
  19.  
  20. public abstract class ESCTable extends RTable {
  21.    static final ESCTableHeader theHeader = new ESCTableHeader();
  22.    protected int lastColumn;
  23.    protected ESCReportWindow parent;
  24.    ApplicationPreferences prefs;
  25.    BaseAction editAction;
  26.  
  27.    public ESCTable(ESCTableModel var1, ESCReportWindow var2, int var3) {
  28.       super(var1);
  29.       BaseApplication.getApplication();
  30.       this.prefs = BaseApplication.getPreferences();
  31.       this.editAction = new 2(this, "esc.mEdit.editFile");
  32.       this.parent = var2;
  33.       this.lastColumn = var3;
  34.       ((JTable)this).setCellSelectionEnabled(false);
  35.       ((JTable)this).setShowVerticalLines(false);
  36.       ((JTable)this).setShowGrid(false);
  37.       ((JTable)this).setIntercellSpacing(new Dimension(0, 0));
  38.       ((JTable)this).setGridColor(Color.lightGray);
  39.       1 var4 = new 1(this);
  40.       ((JTable)this).getSelectionModel().addListSelectionListener(var4);
  41.       ((JTable)this).setSelectionMode(0);
  42.    }
  43.  
  44.    protected void doCheckEdit(MouseEvent var1) {
  45.       Point var2 = var1.getPoint();
  46.       int var3 = ((JTable)this).rowAtPoint(var2);
  47.       int var4 = ((JTable)this).columnAtPoint(var2);
  48.       if (var3 != -1 && var4 != -1) {
  49.          if (var1.getClickCount() >= 2) {
  50.             BaseAction var5 = this.createEditAction();
  51.             File var6 = new File((String)((JTable)this).getValueAt(var3, this.lastColumn));
  52.             if (var6.isFile() && var6.exists() && (((InputEvent)var1).getModifiers() & 4) == 0) {
  53.                ((RAction)var5).actionOccurred(new ActionEvent(this, 0, (String)null));
  54.             }
  55.          }
  56.  
  57.       }
  58.    }
  59.  
  60.    private void updateSBFile(int var1) {
  61.       String var2 = (String)((JTable)this).getValueAt(var1, this.lastColumn);
  62.       this.parent.sbFile.setLabelText(var2);
  63.    }
  64.  
  65.    public boolean pasteable() {
  66.       return false;
  67.    }
  68.  
  69.    public void cut() {
  70.    }
  71.  
  72.    public void copy() {
  73.    }
  74.  
  75.    public void paste() {
  76.    }
  77.  
  78.    public void clear() {
  79.    }
  80.  
  81.    public TableCellRenderer createHeaderRenderer(int var1) {
  82.       return theHeader;
  83.    }
  84.  
  85.    public void headerClick(MouseEvent var1, int var2) {
  86.       Object var3 = this.getSelectedObject();
  87.       ESCTableModel var4 = (ESCTableModel)((JTable)this).getModel();
  88.       var4.sort(var2, !((InputEvent)var1).isShiftDown());
  89.       this.select(var3);
  90.    }
  91.  
  92.    public JPopupMenu createCellPopup(MouseEvent var1, int var2, int var3, TableCellEditor var4) {
  93.       return null;
  94.    }
  95.  
  96.    public Object getSelectedObject() {
  97.       int var1 = ((RTable)this).getSelectedRow();
  98.       return var1 < 0 ? null : ((ESCTableModel)((JTable)this).getModel()).getObjectForRow(var1);
  99.    }
  100.  
  101.    public boolean select(Object var1) {
  102.       int var2 = ((ESCTableModel)((JTable)this).getModel()).getRowForObject(var1);
  103.       if (var2 == -1) {
  104.          return false;
  105.       } else {
  106.          ((RTable)this).select(var2, 1);
  107.          return true;
  108.       }
  109.    }
  110.  
  111.    protected BaseAction createEditAction() {
  112.       return this.editAction;
  113.    }
  114.  
  115.    // $FF: synthetic method
  116.    static void access$6000071(ESCTable var0, int var1) {
  117.       var0.updateSBFile(var1);
  118.    }
  119. }
  120.